草庐IT

shell 编程

全部标签

c# - 以编程方式禁用 Windows 中的密码复杂性

我花了一整天的时间寻找答案,但没有运气。我需要能够在独立的Windows7PC上的本地安全策略中禁用密码复杂性。我曾尝试使用secedit.exe编写脚本。我也搞砸了C#。最终结果应该是一个脚本/程序,它将禁用该策略,然后在本地创建一个新的用户帐户。 最佳答案 经过一些深入的研究,我发现了如何去做。在这里发布代码以防其他人需要使用它。stringtempFile=Path.GetTempFileName();Processp=newProcess();p.StartInfo.FileName=Environment.ExpandEn

c - 确定 shell 扩展是作为上下文菜单处理程序还是拖放处理程序调用

我想以编程方式确定我的外壳扩展是作为上下文菜单处理程序还是拖放处理程序调用的。我已经在正确的位置使用相同的CLSID注册了我的shell扩展。注册表:[HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\{E991C840-C1EB-455C-AD64-282473005C58}]@="TestContextMenu"[HKEY_CLASSES_ROOT\Directory\shellex\DragDropHandlers\TestDragDrop]@="{E991C840-C1EB-455C-AD64-282473005C58}"我的注册表

windows - 如何在 windows 批处理文件或 linux shell 脚本中传递超过 10 个参数

我需要将超过10个参数传递给单个批处理文件(shell脚本)但是在第9个参数之后它将不起作用(它将从头开始)代码示例echoHello!Thisasamplebatchfile.echo%1%2%3%4%5%6%7%8%9%10%11%12%13%14%15%16pause>mybatchdotbatabcdefghijklmnop谁能解决这个问题 最佳答案 基本上,%10被解释为%10。要解决此问题,在批处理文件或shell脚本中,您可以将第一个参数保存在变量中,然后使用shift将所有剩余参数递减1。当您调用shift,%1(s

windows - 类似于 Windows 中 linux shell 中的 `...` 的功能

在Linux/Unixshell中有这样的语法,您可以在其中执行一个命令,在这个命令中是先执行然后替换的其他命令,所以像这样:gccmain.c`pkg-config--cflags--libsgtk+-3.0`这里首先执行pkg-.....然后用它的输出替换,然后执行整个命令WindowsPowerShell中是否有一些类似的功能(如果可能,也有cmd,因为我有时会同时使用两者)我所知道的是,在PowerShell中你可以这样写:gccmain.c(pkg-config--cflags--libsgtk+-3.0)但问题在于次要命令的输出像单个连续字符串一样传递,因此类似“-mms-

windows - cmd编程中的速度和时间问题

最近有一个关于将许多具有用户预定义文件类型扩展名的文件从一个文件夹移动到许多不同文件夹的问题,这些文件夹是根据文件名中的关键字符串(YEAR)立即创建的。此外,当移动到新创建的文件夹时,文件应在没有用户预定义文件类型扩展名的情况下保存(文件名2016.myextension.txt>文件名2016.txt)。我一直对这个问题感兴趣,所以我创建了简单的cmd程序。有两个问题:程序运行正常,但速度太慢。有没有办法让它运行得更快?for/l%%Ain(1900,1,2099)循环里面的ECHO%TIME%命令,看程序代码结尾,总是返回相同的时间值。有没有办法让它返回正确的当前系统时间?程序代

windows - 如何以编程方式检测系统热键?

我正在寻找一种以编程方式检测系统中热键的方法。我的应用程序支持可配置的热键来执行不同的操作,我希望能够判断另一个应用程序是否已经使用了热键或者它是内置的Windows热键(如Win-L以锁定工作站)。如果它是另一个拥有热键的应用程序,我希望能够将其显示给用户。至少是exe的名称。我知道三种使用热键的方法:使用标准API的系统Hook使用属性对话框中的热键功能作为快捷方式轮询异步key状态并响应我怀疑我能否检测到第三种类型,但其他两种呢?还有其他我需要了解的情况吗? 最佳答案 我可以想到三种使用标准API的方法:注册热键SetWind

windows - Windows 中的 i18n shell

windows有支持大字符集的i18nshell吗?在Windows中测试我的应用程序会导致某些数学字符无法正确呈现。cmd.exe和powershell中的Lucida字体没有足够广泛的选择。UnicodeUTF-8是最可取的,其次是其他Unicode编码。 最佳答案 我不确定这是字体还是控制台本身的问题,但您可以尝试安装DejaVuSansMono字体,看看它是否提供了必要的字符。 关于windows-Windows中的i18nshell,我们在StackOverflow上找到一个类

c++ - shell 扩展 : DragQueryFile returns at most 16 (in Windows 7)

我已经编写了一个shell扩展(由TheCompleteIdiot'sGuidetoWritingShellExtensions指导),在我升级到Windows7(32位)之前它可以正常工作。现在,函数DragQueryFileUINTuNumFiles=DragQueryFile(hDrop,0xFFFFFFFF,NULL,0);返回所选文件的正确数量,直到该数量超过16。然后始终返回16。我已经在XP(32)和Vista(32)中测试过它,它可以工作,在Windows7(32/64)中它没有。有什么想法吗?谢谢。 最佳答案 IS

c# - 以编程方式打开 "Folder Options"对话框

是否存在以编程方式打开“文件夹选项”(在Windows资源管理器中:工具>文件夹选项)对话框的方法?如果没有,如何设置“显示隐藏的文件和文件夹”?抱歉英语不好。 最佳答案 这应该有效:ProcessStartInfopsi=newProcessStartInfo{FileName="RUNDLL32.EXE",Arguments="shell32.dll,Options_RunDLL0"};Process.Start(psi);这里有相当广泛的引用:Dx21RunDLL32. 关于c#-

C++:如何为您的应用程序正确注册和注销文件类型关联(以编程方式)

时间是在以下位置设置文件关联:HEY_CLASSES_ROOT\然而,这似乎是可能的,但不再是一个不完整的解决方案。整个注册表中还有其他关联。例如:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\KindMapHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Extensions以及以上所有内容,但由HKEY_USERS执行\Microsoft添加了他们的SetDefaultAssociations控制面板